using System;
using Fornax020.SerialComm.Core;
using Fornax020.SerialComm.Protocol;

namespace Fornax020.SerialComm.Commands
{
    /// <summary>
    /// 固件版本查询命令
    /// </summary>
    public class VersionQueryCommand : CommandBase
    {
        public VersionQueryCommand()
        {
            Name = "VersionQuery";
            Description = "查询固件版本";
        }

        public override byte[] GetCommandData()
        {
            // 根据协议生成版本查询命令 - 修复协议不匹配问题
            // 格式: STX + 'S' + 'G' + 'R' + CR
            byte[] command = new byte[5];
            command[0] = (byte)ProtocolConstants.STX;  // 起始字节
            command[1] = (byte)'S';  // 设置命令
            command[2] = (byte)'G';  // 获取命令
            command[3] = (byte)'R';  // 版本查询
            command[4] = (byte)ProtocolConstants.CR;   // 结束字节
            
            return command;
        }
    }
}
